package com.cskaoyan.javase.homework.day09.extend;
/**
 * 牢记方法的重写，方法的调用结果要看对象的具体类型而定
 *
 * 总结几点:
 *      1.构造器的执行,先父后子
 *      2.方法的重写.对象名点方法的具体调用结果要看对象的具体类型
 *      3.成员变量首先具有默认值.
 *
 * @since 22:04
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Test{
    public static void main(String[] args){
        Father f1 = new Son(1000);
        Father f2 = new Father();
        Son s = new Son(1000);
    }
}
class Father {
    int i = 10;
    public Father() {
        // 方法的重写
        System.out.println(getI());
    }
    public int getI() {
        return i;
    }
}

class Son extends Father {
    int i = 100;
    public Son(int i) {
        // super();
        this.i = i;
    }
    @Override
    public int getI() {
        return i;
    }
}